﻿using System;
using System.Reflection;
using ClickLand.CorporacionPlaza.AccesoDato.Fabricas;
using ClickLand.CorporacionPlaza.Comunes.Recursos;
using ClickLand.CorporacionPlaza.LogicaNegocio.Contratos;
using Logger;

namespace ClickLand.CorporacionPlaza.LogicaNegocio.Implementacion.ComandosPoliza
{
    /// <summary>
    /// Comando que realiza la accion de vencer todos los contratos que se han vencido
    /// </summary>
    public class VencerPolizas : IComando<bool>
    {

        #region Implementacion
        
        /// <summary> Metodo que ejecuta la accion del comando </summary>
        /// <returns></returns>
        public bool Ejecutar()
        {
            #region Instrumentacion Entrada
            if (Log.InfoHabilitado)
                Log.Info(string.Format(Recurso.EntrandoMetodo, MethodBase.GetCurrentMethod().Name));
            #endregion
            FabricaDao.ObtenerFabrica().ObtenerDaoPoliza().VencerPolizas();
            #region Instrumentacion Salida
            if (Log.InfoHabilitado)
                Log.Info(string.Format(Recurso.SaliendoMetodo, MethodBase.GetCurrentMethod().Name));
            #endregion
            return true;
        }

        #endregion
    }
}
